#2018年省赛-程序设计题 递增三元组
import bisect  # 二分查找库
# 准备数据
n = int(input())
A = list(map(int, input().split()))
B = list(map(int, input().split()))
C = list(map(int, input().split()))
# 使用二分查找需要排序数组
A.sort()
B.sort()
C.sort()

ans = 0  # 结果
for j in range(n):  # 对 B[j] 的每个元素遍历
    # 在数组A中找到第一个不小于B[j]的元素的位置
    # 这个位置的值就是数组A中小于B[j]的元素个数
    a = bisect.bisect_left(A, B[j])
    # 得到数组C中大于B[j]的元素个数
    c = (n - bisect.bisect_right(C, B[j]))
    ans += a * c  # 累加每次的结果

print(ans)
